﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 循环
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 1.输入班级人数
            //   输入考试分数
            //  求平均分    
            //Console.Write("请输入班级人数：");
            //int personNum = int.Parse(Console.ReadLine());
            //Console.Write("请输入考试总分数：");
            //double grade = double.Parse(Console.ReadLine());
            //Console.WriteLine($"平均分数为：{grade / personNum}");

            // 2. 一行打印5个星星 ******
            //for (int i = 0; i < 5; i++)
            //{
            //    Console.Write("*");
            //}

            // 3行分别打印  
            //for (int i = 0; i < 3; i++)
            //{
            //    for (int j = 0; j < 5; j++)
            //    {
            //        Console.Write("*");
            //    }
            //    Console.WriteLine();
            //}

            // 4.输入行数 列数 生成N行N列的星星
            //Console.Write("请输入行数：");
            //int line = int.Parse(Console.ReadLine());
            //Console.Write("请输入列数：");
            //int column = int.Parse(Console.ReadLine());
            //for (int i = 0; i < line; i++)
            //{
            //    for (int j = 0; j < column; j++)
            //    {
            //        Console.Write("*");
            //    }
            //    Console.WriteLine();
            //}

            // 6.打印菱形(选做)
            //int len = 19;
            //int item = len % 2 == 0 ? len / 2 : (len - 1) / 2;
            //int index = item;
            //bool isSwitch = false;
            //bool isSwitch2 = false;
            //for (int i=0; i< len*2; i++)
            //{
            //    for (int j = 0; j < len; j++)
            //    {
            //        if (!isSwitch)
            //        {
            //            if (index - i == j) {  
            //            if (index + 1 - i <= item + i) { index++; }
            //            Console.Write("*");
            //            }
            //            else
            //            {
            //                Console.Write(" ");
            //            }
            //        }else if (isSwitch)
            //        {
            //            if (index - (len-i-1) == j)
            //            {
            //                Console.Write("*");
            //                if (index + 1 - (len - i - 1) <= item + (len - i - 1)) { index++; }
            //            }
            //            else
            //            {
            //                Console.Write(" "); 
            //                if (item - (len - i) == item) { isSwitch2 = true; break; }
            //            }
            //        }
            //    }
            //    if (isSwitch2) { break; }
            //    Console.WriteLine();
            //    index = item;
            //    if (index+i+1 >= len) { isSwitch = true; }
            //}

            // 7.
            //for (int i = 0; i < 5; i++)
            //{
            //    for (int j = 0; j <= i; j++)
            //    {
            //        Console.Write("*");
            //    }
            //    Console.WriteLine();
            //}

            // 8.
            //for (int i = 0; i < 5; i++)
            //{
            //    for (int j = 5; i < j; j--)
            //    {
            //        Console.Write("*");
            //    }
            //    Console.WriteLine();
            //}

            // 9.
            //for (int i = 0; i < 5; i++)
            //{
            //    for (int j = 0; j < 5; j++)
            //    {
            //       if (5-(i+1) <= j)
            //        {
            //            Console.Write("●");
            //        }
            //        else
            //        {
            //            Console.Write("□");
            //        }
            //    }
            //    Console.WriteLine();
            //}


            // 10、折纸：折多少次和珠穆朗玛峰一样高
            // 一张纸的厚度是0.0001米，将纸对折，对折多少次厚度超过珠峰高度8848米
            //double peakHeight = 8848.0;
            //double paperHeight = 0.0001;
            //int num = 0;
            //while (paperHeight <= peakHeight)
            //{
            //    Console.WriteLine($"已对折：{num}次，高度为：{paperHeight}");
            //    paperHeight = paperHeight * 2;
            //    num++; 
            //}
            //Console.WriteLine($"最终已对折：{num}次，高度为：{paperHeight}");


            // 11.(选做)
            // 猜拳游戏
            // 请输入用户名
            // xxx
            // 欢迎xxx来到猜拳游戏
            // 请选择对手1.贝索斯 2.马云
            // 1
            // 您选择的对手时贝索斯
            // 请阅读出拳规则
            // 1.剪刀  2.石头 3.布
            // 您请出拳：1
            // 出拳是 剪刀
            // 贝索斯出拳是: 随机 Math.random()
            // 结果: ? 赢



            // 是否继续（y/n）
            // y继续 
            // n结束
            //Random random = new Random();
            //bool isCount = false;
            //while (!isCount)
            //{
            //    Console.Write("请输入用户名：");
            //    string userName = Console.ReadLine();
            //    Console.WriteLine($"欢迎{userName}来到猜拳游戏");
            //    Console.WriteLine("请选择对手1.贝索斯 2.马云");
            //    string serial = Console.ReadLine();
            //    string name = "";
            //    if (serial == "1")
            //    {
            //        Console.WriteLine("您选择的对手时贝索斯");
            //        name = "贝索斯";
            //    }
            //    else if (serial == "2")
            //    {
            //        Console.WriteLine("您选择的对手时马云");
            //        name = "马云";
            //    }
            //    Console.WriteLine("请阅读出拳规则\n1.剪刀  2.石头 3.布");
            //    Console.Write("您请出拳：");
            //    string s = Console.ReadLine();
            //    if (s == "1") { s = "剪刀"; }
            //    else if (s == "2") { s = "石头"; }
            //    else if (s == "3") { s = "布"; }
            //    Console.WriteLine($"出拳是：{s}");

            //    string n = random.Next(1, 4).ToString();
            //    if (n == "1") { n = "剪刀"; }
            //    else if (n == "2") { n = "石头"; }
            //    else if (n == "3") { n = "布"; }
            //    Console.WriteLine($"{name}出拳是:{n}");

            //    // 判断结果
            //    string result = "平局";
            //    if (s == "剪刀" && n == "石头") { result = "输"; }
            //    else if (s == "剪刀" && n == "布") { result = "赢"; }
            //    else if (s == "布" && n == "剪刀") { result = "输"; }
            //    else if (s == "布" && n == "石头") { result = "赢"; }
            //    else if (s == "石头" && n == "剪刀") { result = "赢"; }
            //    else if (s == "石头" && n == "布") { result = "输"; }
            //    Console.WriteLine($"结果：{result}");
            //    Console.Write("是否继续（y/n）");
            //    if (Console.ReadLine() == "n")
            //    {
            //        Console.WriteLine("已退出！！！");
            //        isCount = true;
            //    }
            //}



            //1.9 * 9乘法表
            //for (int i = 1; i < 10; i++)
            //{
            //    for (int j = 1; j <= i; j++)
            //    {
            //        Console.Write($"{j}*{i}={i * j} ");
            //    } 
            //    Console.WriteLine();
            //}


            // 2. 羽毛球拍15元，球3元，水2元。200元每种至少一个，有多少可能


            // 1. 输入 两个 整数  n1 , n2 , 输出 n1 - n2 之间 的所有偶数 
            //Console.WriteLine("输入 两个 整数");
            //int n1 = int.Parse(Console.ReadLine());
            //int n2 = int.Parse(Console.ReadLine());
            //if (n1 > n2)
            //{
            //    while (n1 > n2)
            //    {
            //        n2++;
            //        if (n2%2 == 0)
            //        {
            //            Console.WriteLine(n2);
            //        }
            //    }
            //}else if (n1 < n2)
            //{
            //    while (n1 < n2)
            //    {
            //        n1++;
            //        if (n1 % 2 == 0)
            //        {
            //            Console.WriteLine(n1);
            //        }
            //    }
            //}


        }
    }
}
